extern void console_init();
extern void gdt_init();
extern void interrupt_init();
extern void clock_init();
extern void hang();


void kernel_init()
{

  console_init();

  gdt_init(); 
  
  interrupt_init();

  // task_init();
  clock_init();
  time_init();

  asm volatile("sti\n");
  
  // u32 counter = 0;
  // while (true)
  // {
  //   DEBUGK("looping in kernel init %d ...\n", counter++);
  //   delay(100000000);
  // }

  hang();

}

